----- Original Message ----- From: "Joel Haefner" To: Sent: Tuesday, September 23, 2003 10:19 AM Subject: [encore] entrance permission | I know this is a stupid question, but how do I, as wizard, set the | properties on a space so that builders can attach entrances and exits | without my granting permission every time? ----------------------------- From: encore-bounce@utdallas.edu on behalf of Alexandre Borgia Sent: September 23, 2003 6:45 PM To: enCore Subject: [encore] Re: entrance permission Follow Up Flag: For Your Information Flag Status: Flagged Hi Joel, There is no built-in way, but you can do the following: 1) @prop $room.free_exits 0 rc ... this adds a boolean flag to the Generic Room, similar to the "free_entry" one that can be set to permit or prohibit users from teleporting into a room. 2) Edit both $room:add_exit and $room:add_entrance verbs. These two verbs are very short (2 lines!) and should look almost similar. The first line is a "set_task_perms" statement that sets security on the verb, and this is what prohibits exits-linkage from users other than the one who owns the room. The trick is to simply wrap the following conditional statement around the security check - which should be the very first line of both verbs: ----------- if (!(this.free_exits && callers()[1][1] in {$xpress_object_editor, $building_utils})) set_task_perms(caller_perms()); endif ... (other code is here) ------------ So if the "free_exits" flag is set to 1 (that is done by doing: "@set here.free_exits to 1" when in a room), everyone will be able to add exits from the room:) I tested this in plain telnet (using @dig) - I verified it should work in the enCore interface as well, but if you ever implement it and it doesn't please get back to me. I also verified that recycling exits works as expected :) Hope this help! - Alexandre Borgia ============================== ----- Original Message ----- To: Sent: Friday, September 26, 2003 7:31 AM Subject: [encore] How to Publicize a place | Dear MOOers, | | I used to use the command to publicize a room | for anyone to connect their room. | @set #0.room_connection_points to {#nnn, #nnn, #nnn, #nnn} | PS: #nnn should include all the old ones and new ones | | why it doesn't work now. | I use encore database on a window 2k server. | | Thanks for your help. Hi Su, From what I see this list of rooms is available from the web only if the user has not created any rooms yet. It will be used to build the list of possible room connections in the "new room wizard" form. So one possible reason for not working is that the user has already created a room. Actually this messages goes well with the last inquery from Joel: it ends up using :add_exit and :add_entrance on the $room object (from "$xpress_object_editor:make_exit"). I have not confirmed this but I think you should face the same problem I pointed earlier if you want the room to link both ways. For instance you can link "My Room" to a public room, but the public room will never display a link to "My Room" since you don't own it. If that's the expected behavior, what I posted earlier should make it work except that the check should be somewhat different, like using: (this in $room_connection_points) ... instead of "this.free_exits". Though I don't want to give too many suggestions, and really since this seems a "hot" issue that'd be nice to be clarified in some future enCore release;) - Alexandre Borgia